package com.hua.domain;

import com.baomidou.mybatisplus.annotation.*;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;

/**
 * 订单表 用以存储我们的订单
 * @TableName orders
 */
@TableName(value ="orders")
@Data
public class Orders implements Serializable {
    /**
     * 订单表的主键
     */
    @TableId(type = IdType.AUTO)
    private Long orderId;

    /**
     * 订单号 是唯一的 给客户和商家看的
     */
    private String orderNumber;

    /**
     * 0-点餐 1-团购 2-券包  3-外卖 我们的订单类型
     */
    private Integer orderType;

    /**
     * 0-未支付 1-已支付 2-商家已接单 3-制作中 4-配送中 5-订单已完成 6-已取消
     */
    private Integer orderStatus;

    /**
     * 商铺的的地址
     */
    private String orderAddress;

    /**
     * 实际支付价格
     */
    private BigDecimal payedPrice;

    /**
     * 应该支付的价格
     */
    private BigDecimal shouldPayPrice;

    /**
     * 0-到店自取 1-外卖配送
     */
    private Integer pickMealsType;

    /**
     * 下单的时间
     */
    private Date orderTime;

    /**
     * 0-堂食 1-打包 2-外卖
     */
    private Integer diningMethod;

    /**
     * 取餐时间
     */
    private String mealCollectionTime;

    /**
     * 订单备注
     */
    private String remarks;

    /**
     * 商家手机号
     */
    private String businessPhone;

    /**
     * 用户的手机号
     */
    private String userPhone;

    /**
     * 用户的地址
     */
    private String userAddress;

    /**
     * 用户的昵称
     */
    private String username;

    /**
     * 用户的性别
     */
    private Integer userGender;

    /**
     * 支付方式
     */
    private String paid;

    /**
     * 红包的金额
     */
    private BigDecimal redPacketMoney;

    /**
     * 0-未完成 1-已完成
     */
    private Integer isCompleted;

    /**
     * 排队数
     */
    private Integer queueNum;

    /**
     * 订单取消的时间
     */
    private Date cancelTime;

    /**
     * 0-没有删除 1-已删除 ......
     */
    @TableLogic(delval = "0")
    private Integer isDeleted;

    /**
     * 前面的人数
     */
    private Integer frontNum;

    /**
     * 用户的id
     */
    private Long userId;

    /**
     * 打包费
     */
    private BigDecimal packingFee;

    /**
     * 配送费
     */
    private BigDecimal deliveryFee;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}
